package com.steven.design.XingWei_Pattern.MoBanFangFa;


/**模板方法模式：
 * 模板方法模式（Template Method Pattern）：定义一个操作中的算法的骨架，
 * 而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
 * 通俗地说，模板方法模式就是一个关于继承的设计模式。
 *
 * 每一个被继承的父类都可以认为是一个模板，它的某些步骤是稳定的，某些步骤被延迟到子类中实现。
 * 在使用模板方法模式时，我们可以为不同的模板方法设置不同的控制权限：
 * 如果不希望子类覆写模板中的某个方法，使用 final 修饰此方法；
 * 如果要求子类必须覆写模板中的某个方法，使用 abstract 修饰此方法；
 * 如果没有特殊要求，可使用 protected 或 public 修饰此方法，子类可根据实际情况考虑是否覆写
 */
public class MoBan {

    public static void main(String[] args) {
        // 输出：本人阿笠因参加力扣周赛需请假0.5天，望批准
        new MyLeaveRequest().request();
    }
}
